#ifndef __WEBRTC_H__
#define __WEBRTC_H__
#include "handle.h"
#include "webrtc_ns.h"
#include "webrtc_agc.h"
#include "webrtc_vad.h"
#include "webrtc_aec.h"
#include "base.h"

class WebRtc
{
private:
	int m_nSize;
	SwrConvert* m_swrConvert;
	NsHandle* m_pNsInst;
	VadInst* m_pVadInst;
	void* m_pAecInst;
	void* m_pAgcInst;

	void ns_process(DataPacket*);
	void vad_process(DataPacket*);
	void aec_process(DataPacket*);
	void agc_process(DataPacket*);
public:
	WebRtc();
	virtual ~WebRtc();
	DataPacket* StartWebRtc(DataPacket*, AVSampleFormat, int , int ,
		bool ns = true, bool vad = true, bool aec = true, bool agc = true);
};
#endif